Various aspects of the present invention relate generally to the entry of information into a computer system, and more particularly, to the efficient input of information in multiple languages to produce an output in a language that is common to, and different from, the multiple languages used to input the information.
A user entering information into a computer using a typical 104-key United States computer keyboard (keyboard) may need or want to input at least some portion of information using a language or symbols that are not supported by the keyboard. For example, a user may want to enter text in a logographic language, such as Chinese. Unfortunately, the keyboard will not accommodate all the possible characters in the written form of this logographic language. As another example, the user may want to enter text in a language that is not logographic, but where the keyboard does not normally support all of the characters of the written language, such as Russian or Arabic.
To accommodate such a user's needs, an input method editor (IME) can be used, which converts keystrokes into characters and symbols not normally found on the keyboard. Typically, the user must first select a desired language, such as by maneuvering through one or more menus of an operating system, and by selecting a language setting in an appropriate dialog window. The user must then navigate to a software application such as a word processor and enter keystrokes corresponding to the desired output, e.g., by entering the desired characters phonetically in the example of entering text in Chinese. Often times, this process requires the user to enter several strokes on the keyboard to write one character.
Keeping with the above example of Chinese, if a user wants to enter the Chinese character , pronounced “chuan”, then the user must activate the IME, choose Chinese as the language, and type “chuan” on the keyboard. The IME will then interpret the string representing the phonetic pronunciation “chuan” and allow the operator to import the Chinese character  into a word processing document.